﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MachineVision.Core.TemplateMatch.Shared;
#nullable disable
namespace MachineVision.Core.TemplateMatch.NccModel
{
    public class NccModelInputParameter : BaseParameter
    {
        public NccModelInputParameter() : base()
        {

        }
        public override void ApplyDefaultParameter()
        {
            NumLevels = "auto";
            AngleStart = 0;
            AngleExtent = 360;
            AngleStep = "auto";
            Metric = "use_polarity";
        }
        private string numLevels;
        private double angleStart;
        private double angleExtent;
        private string angleStep;
        private string metric;
        /// <summary>
        /// 金字塔层数
        /// </summary>
        public string NumLevels { get => numLevels; set { numLevels = value; RaisePropertyChanged(); } }
        /// <summary>
        /// 模板旋转起始角度
        /// </summary>
        public double AngleStart { get => angleStart; set { angleStart = value; RaisePropertyChanged(); } }
        /// <summary>
        /// 模板旋转角度范围
        /// </summary>
        public double AngleExtent { get => angleExtent; set { angleExtent = value; RaisePropertyChanged(); } }
        /// <summary>
        /// 旋转角度步长
        /// </summary>
        public string AngleStep { get => angleStep; set { angleStep = value; RaisePropertyChanged(); } }
        /// <summary>
        /// 匹配方法
        /// </summary>
        public string Metric { get => metric; set { metric = value; RaisePropertyChanged(); } }
    }
}
